package com.tuju.jetpackfirstdemo.ui.textbanner

import android.graphics.Color
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.TypedValue
import android.view.Gravity
import android.view.View
import android.widget.TextView
import android.widget.ViewSwitcher
import com.tuju.jetpackfirstdemo.R
import kotlinx.android.synthetic.main.activity_text_banner.*

class TextBannerActivity : AppCompatActivity() {

    private val strs = arrayOf("C++ 多态性 运算符重载", "C++ 多态性 虚函数、抽象类（一）", "C++ 多态性 虚函数、抽象类（二）", "C++ 作用域分辨符")
    private var times = 0

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_text_banner)

        // 设置切入动画
        textSwitcher.setInAnimation(this@TextBannerActivity, R.anim.slide_in_bottom)
        // 设置切出动画
        textSwitcher.setOutAnimation(this@TextBannerActivity, R.anim.slide_out_up)
        //items是一个字符串列表，index就是动态的要显示的items中的索引
        textSwitcher.setFactory(object : ViewSwitcher.ViewFactory {
            override fun makeView(): View {
                val tv = TextView(this@TextBannerActivity)
                tv.gravity = Gravity.CENTER
                tv.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 20f)
                tv.setTextColor(Color.MAGENTA)
                return tv
            }
        })
        next(null)


        val res = arrayOf("静夜思", "床前明月光", "疑是地上霜", "举头望明月", "低头思故乡")
        textSwitchView2.setResources(res)
        textSwitchView2.setTextStillTime(2000)

        tsv_my.add("古来圣贤皆寂寞")
        tsv_my.add("惟有饮者留其名")
        tsv_my.setTextStillTime(2000)
    }

    //修改
    fun modifyText(view:View){
//        val res = arrayOf("朱樱红柳眉黛", "星眸水汪汪", "情深意更长", "款款东南望","一曲凤求凰")
//        textSwitchView2.setResources(res)
//        textSwitchView2.setTextStillTime(5000)

        tsv_my.clear()
        tsv_my.add("朱樱红柳眉黛")
        tsv_my.add("星眸水汪汪")
        tsv_my.add("款款东南望")
        tsv_my.add("一曲凤求凰")
        tsv_my.resetStar()
    }

    fun next(view: View?) {
        textSwitcher.setText(strs[times++ % strs.size])
    }
}
